Network-provided content, such as Internet web pages or media content such as video, pictures, music, and the like, are typically served to end users via networked computer systems. End user requests for the network content are processed and the content is responsively provided over various network links. These networked computer systems can include origin hosting servers which originally host network content of content creators or originators, such as web servers for hosting a news website. However, these computer systems of individual content creators can become overloaded and slow due to frequent requests of content by end users.
Content delivery networks have been developed which add a layer of caching between the origin servers of the content providers and the end users. The content delivery networks typically have one or more cache nodes distributed across a large geographic region to provide faster and lower latency access to the content for the end users. When end users request content, such as a web page, which is handled through a cache node, the cache node is configured to respond to the end user requests instead of the origin servers. In this manner, a cache node can act as a proxy for the origin servers. However, when a cache node communicates over different communication service providers, such as Internet Service Providers (ISPs), the various ISPs and other datagram networks over which end user content requests and content delivery are handled can add additional slowdowns and latency issues.
The Internet Protocol (IP) is a standard for routing communication through and between packet-switched networks. The unit of delivery in IP is the datagram, a packet of digital data that includes a routing header. The header includes the IP address of the intended destination of the datagram. An IP address is a unique number. In IP version 4, an IP address has 32 bits. In IP version 6, an IP address has 128 bits. As a datagram is routed, it is transferred between various routers until eventually reaching its destination. Each router uses a routing table to decide to which other router the datagram should be forwarded next. Routers frequently share information to update their routing tables using standard interactions such as Border Gateway Protocol.
An IP address is split logically into two parts: high-order bits and low-order bits. The last router of a route uses the low-order bits to identify which device is the final destination of a datagram. The other routers of a route ignore the low-order bits and use the high-order bits to transfer the datagram from one interconnected network to another. Exactly how many bits are high-order or low-order depends on the routing scheme. Classful routing allows only 8, 16, or 24 bits to be high-order, which can present problems. Classful routing can lead to many entries in routing tables which reduces efficiency in some network topologies. Classful routing does not take advantage of the increased address size of IP version 6, and the availability of unique numbers within the limited space of at most 24 high-order bits does not meet demand for custom topologies. Classless Inter-Domain Routing (CIDR) alleviates these problems by allowing an arbitrary number of high-order bits. CIDR notation is an extended encoding of an IP address that includes a prefix size. The prefix size declares how many bits are high-order, which is the CIDR prefix.